using System;
using System.Collections.Generic;
using System.Text;
using DTO;
using DAL;

namespace BUS
{
   public class tbnhanvienBUS
    {
        static public string error = "";
        public static void Insert(tbnhanvienDTO nv)
        {
            tbnhanvienDAL tbnhanvienDAL = new tbnhanvienDAL();
            tbnhanvienDAL.Insert(nv);
        }
        public static void Update(tbnhanvienDTO nv)
        {
            tbnhanvienDAL tbnhanvienDAL = new tbnhanvienDAL();
            tbnhanvienDAL.Update(nv);
            error = tbnhanvienDAL.error;
        }
        public static void Delete(int iD)
        {
            tbnhanvienDAL tbnhanvienDAL = new tbnhanvienDAL();
            tbnhanvienDAL.Delete(iD);
        }
        public static tbnhanviencollection GET(string Where, int PageIndex, int PageSize,
                                        string OrderBy, string OrderDirection,
                                        out int TotalRecords)
        {
            tbnhanvienDAL tbnhanvienDAL = new tbnhanvienDAL();
            return tbnhanvienDAL.GET(Where, PageIndex, PageSize,
                            OrderBy, OrderDirection, out TotalRecords);
        }
       public static tbnhanvienDTO GetByID(int iD)
       {
           int t = 0;
           tbnhanvienDAL tbnhanvienDAL = new tbnhanvienDAL();
           tbnhanviencollection nvcolect = tbnhanvienDAL.GET("where " + tbnhanviencolumn.Manv.ToString() + " = " + iD.ToString(), 0, 0,
               tbnhanviencolumn.Tennv.ToString(), "ASC", out t);
           if (nvcolect.Count == 1)
               return nvcolect[0];
           return null;
       }
       public static tbnhanviencollection GETAll()
       {
           int t = 0;
           tbnhanvienDAL tbnhanvienDAL = new tbnhanvienDAL();
           return tbnhanvienDAL.GET("where 1=1", 0, 10, tbnhanviencolumn.Tennv.ToString(), "ASC", out t);
       }

       public static tbnhanvienDTO GetByName(string name)
       {
           int t = 0;
           tbnhanvienDAL tbnhanvienDAL = new tbnhanvienDAL();
           tbnhanviencollection nvcolect = tbnhanvienDAL.GET("where " + tbnhanviencolumn.Taikhoan.ToString() + " = '" + name+"'", 0, 0,
               tbnhanviencolumn.Tennv.ToString(), "ASC", out t);
           if (nvcolect.Count == 1)
               return nvcolect[0];
           return null;
       }
   }
}
